1. Field of the Invention
The present invention relates generally to a CDMA (Code Division Multiple Access) mobile communication system, and in particular, to an apparatus and method for rapidly retransmitting frames that are lost during data transmission/reception according to a radio link protocol (RLP) used for efficient data transmission in a radio environment.
2. Description of the Related Art
CDMA has evolved from the IS-95 standards that provide primarily voice transmission service to CDMA 2000 standards that can provide the additional services of high quality voice transmission, moving picture transmission, and Internet browsing.
Packet data service in CDMA 2000 is illustrated in FIG. 1. In FIG. 1, a terminal is comprised of a terminal equipment TE and a mobile termination MT. BS/MSC denotes a base station/mobile switching center and IWF denotes an interworking function (IWF) unit that interworks with a data network (e.g., Internet). The IWF unit serves to convert protocols when different protocols are used. Upper service (web service) processors of the terminal and the IWF unit communicate data through an Internet protocol (IP) processor and a point-to-point protocol (PPP) processor. That is, the upper service processors transfer data in link protocol packets to lower layers and the lower layers transmit the received data by appropriate protocols.
In FIG. 1, an EIA-232 controller is used between the TE and the MT by way of example. Link protocol packets received at the MT through the EIA-232 controller become RLP frames according to the RLP, which the present invention is directed to. The RLP frames are transmitted over a physical channel connected by the CDMA 2000 standards, namely IS-2000 standards. The RLP packets received at the base station over the physical channel are recovered to the link protocol packets, which are transmitted to the IWF unit through relay layers. The interface between the base station and the IWF unit is generally based on IS-658 standards. The IWF unit takes out data from the link protocol packets and transmits them to a network protocol processor and finally to the upper service processors.
The procedure describes data transmission from the terminal to the base station and data transmission from the base station to the terminal is performed similarly.
Different configurations from that shown in FIG. 1 can be contemplated to provide various services in CDMA 2000. However, they are the same in that link protocol packets including web service data are transmitted over a physical channel by RLP.
FIG. 2 is a detailed block diagram of a mobile communication system for transmitting/receiving data according to the RLP of FIG. 1.
Referring to FIG. 2, transmission data buffers 122 and 222 and reception data buffers 124 and 224, being memory devices, store data that EIA-232 controllers or IS-658 controllers received from link protocol processors 110 and 210. RLP processors 130 and 230 receive a necessary amount of data from the data buffers 122 and 222 and transmit them to their receiving sides. The RLP processors 130 and 230 store the received data in the data buffers 124 and 224. The EIA-232 controllers or the IS-658 controllers transmit the stored data to PPP processors, that is, the link protocol processors 110 and 210. The EIA-232 controllers and the IS-658 controllers operate based on the EIA-232 standards and the IS-658 standards, respectively. These controllers are not shown in FIG. 2 because the current CDMA 2000 packet service allows other schemes as well as the EIA-232 and IS-658 controllers.
Multiplexing/demultiplexing (MUX/DEMUX) controllers 140 and 240 attach information about the destinations and sizes of RLP frames and transmit the RLP frames to physical layer processors 150 and 250. The MUX/DEMUX controllers 140 and 240 also check the destinations and sizes of received RLP frames and transmit the RLP frames to the RLP processors 130 and 230.
The physical layer processors 150 and 250 connect physical channels between the terminal and the base station according to the IS-2000 standards, transmit information received from the MUX/DEMUX controllers 140 and 240 over the physical channels, and transmit information received over the physical channels to the MUX/DEMUX controllers 140 and 240.
According to the RLP type 3 standard, if received frames are defective, a frame retransmission request is transmitted to an RLP frame transmitter. That is, an RLP frame receiver transmits a NAK (Non-Acknowledgment) frame including a retransmission request for a specific frame to the RLP frame transmitter and then the RLP frame transmitter retransmits the frame. The NAK frame and the retransmitted frame might also be damaged. Hence, the RLP frame receiver retransmits the NAK frame if it fails to receive the requested frame within a predetermined time period. After transmitting the NAK frame, the RLP frame receiver sets a retransmission timer to an appropriate value and retransmits the NAK frame if it cannot receive the requested frame until the retransmission timer value is decreased one by one and finally to 0.
The retransmission timer value is decreased if the RLP frame receiver receives a null frame, an idle frame, or a new data frame. The RLP frame transmitter transmits a null frame or an idle frame when it has no data to transmit or no retransmission requests to process. The RLP frame transmitter transmits a new data frame when it has data to transmit but no retransmission requests to process. Receipt of such frames at the RLP frame receiver implies that the RLP frame transmitter has received no retransmission request. Therefore, the RLP frame receiver decreases the retransmission timer value.
However, if the RLP frame transmitter has too many frames to retransmit, it cannot transmit a null frame, an idle frame, or a new data frame until it finishes retransmitting the frames. Consequently, in case some retransmitted frames are lost again, the RLP frame receiver does not transmit a retransmission request until it receives a null frame, an idle frame, or a new data frame.
FIG. 3 is a view illustrating a conventional frame retransmission request and retransmission procedure. Here, two time slots (i.e., 40 ms) are occupied for requesting retransmission by the RLP frame receiver and then retransmitting a requested frame by the RLP frame transmitter, by way of example. While a retransmission timer is set for each retransmission frame according to the RLP Type 3 standard, only the case that frame #1 is damaged during retransmission will be considered here.
In FIG. 3, the RLP frame receiver recognizes at time T1 that frames #0 to #5 have been damaged and transmits an NAK frame, setting a retransmission timer for frame #1 to two time slots. The RLP frame transmitter retransmits the requested frames at time T2. The RLP frame receiver receives none of the requested frames at time T3 and thus decreases the retransmission timer value by 1. At time T4, the RLP frame receiver receives frame #0 and need not decrease the retransmission timer value because the RLP frame receiver has received no null frames, idle frames, or new data frames. When frame #1 is damaged at time T5, the RLP frame receiver does not decrease the retransmission timer value for the above-described reason. The RLP frame receiver does not decrease the retransmission timer value at time T6 either because it receives frame #2.
As noted from FIG. 3, according to the current RLP Type 3 standard, retransmission of frame #1 that is lost again cannot be requested until the last frame #5 is retransmitted. In case too many frames are to be retransmitted, the retransmission request is much delayed. Thus, an upper link protocol controller performs retransmission, thereby decreasing the whole performance.
The reason that the RLP Type 3 standard sets the above timer decrease conditions is that the RLP frame transmitter processes retransmission requests in the received order. Although the RLP frame receiver requests for retransmission of frame #1 at T6, the RLP frame transmitter processes the retransmission request received at T2 for frames #0 to #5 prior to processing of the retransmission request for frame #1 received later than T6. Therefore, arrival of retransmission frames in the order of their sequence numbers is not guaranteed. As a result, the RLP frame receiver cannot recognize that a specific frame has not been received until the RLP frame transmitter finishes transmitting all the retransmission frames.